﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;

namespace WebCliente.UserControls
{
    public partial class pcCajaMensajes : System.Web.UI.UserControl
    {
        public bool DivHeight
        {
            set { cambiarDiv(value); }
        }

        public void cambiarDiv(bool val)
        {
            if (val)
            {
                this.DivInformacion.Attributes["style"] = "height:35px;";
                this.DivSatisfactorio.Attributes["style"] = "height:35px;";
                this.DivAtencion.Attributes["style"] = "height:35px;";
                this.DivError.Attributes["style"] = "height:35px;";
            }
        }

        string mensaje = string.Empty;

        [Browsable(true)]
        public string Mensaje
        {
            get { return mensaje; }
            set { mensaje = value; }
        }

        [Browsable(false)]
        public enum PageProtectionMode
        {
            Informacion,
            Satisfactorio,
            Atencion,
            Error
        }

        PageProtectionMode set;

        [Browsable(true)]
        public PageProtectionMode TipoMensaje
        {
            get { return set; }
            set { set = value; }
        }

        //private PageProtectionMode pageprotectionmodechoice;
        //public PageProtectionMode PageProtectionModeChoice
        //{
        //    get { return pageprotectionmodechoice); }
        //    set { pageprotectionmodechoice = value; }
        //}



        protected void Page_Load(object sender, EventArgs e)
        {

        }

        /// <summary>
        /// Establece los valores predeterminados al control Caja Mensajes
        /// </summary>
        public void EstablecerInformacion()
        {
            ReestablecerInformacion();
            SetInformacion();
        }

        /// <summary>
        /// Limpia la caja de mensajes
        /// </summary>
        public void LimpiarInformacion()
        {
            this.ReestablecerInformacion();
        }

        private void ReestablecerInformacion()
        {

            DivAtencion.Visible = false;
            DivAtencion.InnerText = string.Empty;

            DivError.Visible = false;
            DivError.InnerText = string.Empty;

            DivInformacion.Visible = false;
            DivInformacion.InnerText = string.Empty;

            DivSatisfactorio.Visible = false;
            DivSatisfactorio.InnerText = string.Empty;
        }


        private void SetInformacion()
        {
            if (TipoMensaje.Equals(PageProtectionMode.Atencion))
            {
                DivAtencion.Visible = true;
                DivAtencion.InnerText = Mensaje.ToString();
            }
            if (TipoMensaje.Equals(PageProtectionMode.Error))
            {
                DivError.Visible = true;
                DivError.InnerText = Mensaje.ToString();
            }
            if (TipoMensaje.Equals(PageProtectionMode.Informacion))
            {
                DivInformacion.Visible = true;
                DivInformacion.InnerText = Mensaje.ToString();
            }
            if (TipoMensaje.Equals(PageProtectionMode.Satisfactorio))
            {
                DivSatisfactorio.Visible = true;
                DivSatisfactorio.InnerText = Mensaje.ToString();
            }

        }


    }
}